Automated transition of content consumption across devices

ABSTRACT

Features are disclosed for transferring the presentation or playback of content from device to device. The content may include, but is not limited to, aural, video, and multimedia content. A personal device may be detected playing content. A current play position of the content can be obtained, and playback can be halted. The play position can be transferred to a media device wherein playback is automatically resumed. Additionally, the playing of content may be transferred between two or more media devices, for example in response to the movement of a user. Personal device movements and content operations may be monitored in order to determine improvements to the automatic transfer of content consumption from device to device.

BACKGROUND

A personal device, such as a mobile phone, media player, or tabletcomputer, can be used to consume content while a user of the device istravelling. The content can include aural content, such as music andaudio books, or it may be rich multimedia content, such as movies, videogames, and the like. Personal devices, while often mobile and efficient,may have limited functionality and content consumption capabilities,including small or low resolution displays, low quality speakers, andlimited computing power. Purpose-built media devices, such astelevisions, stereos, video game systems, and desktop computers providerich content consumption experiences. The media devices can have largehigh definition displays, high fidelity audio processing equipment andspeakers, and large amounts of computing power.

Conventionally, if a user is viewing or listening to content via apersonal device, such as a mobile phone, and wants to instead consumethe content on an alternate media device, the user may have to manuallyload the content for playback on the alternate media device, and usingthe alternate media device, locate the point from which to resumeplayback of the content based on a current play position on the personaldevice (e.g., by fast forwarding playback of the content on the mediadevice until the desired play position is reached). Some personaldevices allow a user to manually instruct a given personal deviceplaying back content to stream the content to another media device,which may then output the content to the user. For example, a userlistening to music via a suitably equipped MP3 player may instruct theMP3 player to stream the music to a home stereo system for output on thespeakers of the stereo. In such systems the execution and playback ofthe content continues to originate from the personal device, and theuser needs to manually instruct the personal device at the desired timeof playback to stream the content to the alternate media device.

BRIEF DESCRIPTION OF THE DRAWINGS

Throughout the drawings, reference numbers may be re-used to indicatecorrespondence between referenced elements. The drawings are provided toillustrate example embodiments described herein and are not intended tolimit the scope of the disclosure.

FIG. 1 is a block diagram of an illustrative networked contentconsumption environment including a local area network, a remoteservice, and multiple personal devices in communication over a network.

FIG. 2 is a block diagram of an illustrative local area networkincluding several media devices.

FIG. 3A is a block diagram of illustrative interactions between apersonal device and various media devices, as might occur during thetransfer of content playback.

FIG. 3B is a block diagram of illustrative interactions between multipledevices in the process of playing content, and the transitions that mayoccur when users move from location to location.

FIG. 4 is a flow diagram of an illustrative process for transferringplayback of content from a personal device to a media device.

FIG. 5 is a flow diagram of an illustrative process for monitoring anddetermining user behaviors regarding travel and content consumption.

DETAILED DESCRIPTION

Introduction

Generally described, the present disclosure relates to transitioning thepresentation of content, including but not limited to aural, video, andmultimedia content, from device to device. For example, aspects of thepresent disclosure relate to the detection of a mobile personal devicewhile the mobile personal device is playing content, and the automatictransition of content presentation to another media device, such as apurpose-built device, a non-battery powered media device, and/or a morecapable media device.

In some embodiments, a mobile personal device, playing or otherwisepresenting content, is detected, a current play position of the contentis determined (e.g., obtained from the mobile personal device or aremote service), and playback of the content by the mobile personaldevice is halted (although playback may be halted prior to determiningthe current play position). Playback of the content is, optionally atsubstantially the same time (e.g., within 10 seconds-5 seconds, 5seconds-1 second, or less than 1 second), automatically resumed on analternate media device at or approximately at the current play position.

Additional aspects of the disclosure relate to the transfer of playbackbetween media devices. For example, a first media device may be playingcontent as a user moves to an area in proximity to a second mediadevice. A current play position is obtained or determined and contentplayback is automatically transitioned to the second media device. Thecurrent play position may be transferred to the second media by thefirst media device or by an intermediary system. Further aspects of thedisclosure relate to the monitoring of mobile personal device movementand usage. Data is collected and determinations are made to implementcontent playback transfer improvements.

Although aspects of the embodiments described in the disclosure willfocus, for the purpose of illustration, on a management componentdetecting content playback and facilitating automated transition ofcontent playback, one skilled in the art will appreciate that thetechniques disclosed herein may be applied to any number of softwareprocesses or applications. Further, although various aspects of thedisclosure will be described with regard to illustrative examples andembodiments, one skilled in the art will appreciate that the disclosedembodiments and examples should not be construed as limiting.

Various aspects of the disclosure will now be described with regard tocertain examples and embodiments, which are intended to illustrate butnot limit the disclosure. With reference to an illustrative example, amobile device, such as a mobile phone, may be used to consume content,such as an audio program (e.g., an audio book, music, a podcast, etc.).While a user of the mobile phone is at home, the mobile phone may beconfigured to connect to the user's home network (e.g., a wirelessnetwork). The user may initiate playback of the audio program while awayfrom home, such as during the commute from work. When the user drivesinto a garage at home, the mobile phone may automatically connect to theuser's home network. A management component of the home network candetect that the mobile phone is connected to the home network, andreceive information about the playback of the audio program, includingthe current play position, transmitted by the mobile phone. Themanagement component may notify the mobile phone that playback of theaudio program will transfer to a home A/V (audio/video) system (e.g., astereo or television), and in response the mobile phone may pauseplayback automatically. The home management component may execute withinthe user's home (e.g., on a home computing device) or on a remote systemnetworked to the user's home network and/or home A/V system.

As the user enters the home, a copy of the audio program can be loadedby the home A/V system (e.g., from local memory or from a remote datastore) or streamed to the home A/V system from another system, such as asystem that had been streaming the audio program to the mobile phone.The A/V system playback of the content can commence from the playposition obtained from the mobile phone, without requiring the user tomanually instruct the mobile phone or the home A/V system to transitionthe playback of the content at issue. Volume and equalizer settings forthe home A/V system can be loaded according to a saved configuration.The management component may detect the location of the user as the usermoves from room to room. As the user moves throughout the house,playback of the program may be transferred by the management componentfrom device to device, depending on device capabilities and userconfigurable preferences, so that content playback is transferred to adevice physically proximate with the user (e.g., in the same room orlocation as the user).

The content for which playback may be transitioned from a mobile deviceto a media device can include, but is not limited to, audio programs,such as music and audio books, video programs, such as movies andtelevision shows, and video games. Moreover, transition from one deviceto another device may allow playback of additional types of content orthe offering of different features, depending on the capabilities of thedevices performing the playback. For example, playback of an audio bookby a mobile device, such as a mobile phone not configured for videoplayback or with a relatively small screen, may be limited to only theaudio features of the book. However, once playback is transitioned to amedia device such as a smart television, additional content may beplayed and/or features offered due to the additional video capabilitiesprovided by the smart television. Examples of such additional contentinclude the text of the book, images or video clips associated with theaudio book (e.g., static images/photographs or videos of restaurants orother locations mentioned in the audio book, or of people mentioned inthe book), and/or a motion picture adaptation corresponding to the audiobook.

Networked Content Consumption Environment

Prior to describing embodiments of the automated transition process indetail, an example networked content consumption environment in whichthe process may be implemented will be described. FIG. 1 illustrates anetworked content consumption environment including a network, such aslocal area network (LAN) 102, any number of personal devices 106, and aremote service 112. The LAN 102 may include one or more switches,routers, cable modems, ADSL modems, etc. The personal devices 106 andremote service 112 may communicate with each other and with the LAN 102over a communication network 110, which may a wide area network. Thecommunication network 110 may be a publicly accessible network of linkednetworks, possibly operated by various distinct parties, such as theInternet. In some embodiments, the communication network 110 may be aprivate or semi private network, such as a corporate or universityintranet. The communication network 110 may include one or more wirelessnetworks, such as a GSM network, a CDMA network, an LTE network, orother type of wireless network.

The personal devices 106 can correspond to a wide variety of electronicdevices. In some embodiments, the personal devices 106 are mobiledevices that include one or more processors and a memory which maycontain software applications executed by the processors. The personaldevices 106 may include speakers and/or displays for presenting content.In addition, the personal devices 106 may be configured with one or morewireless network antennae to facilitate wireless communication withother devices, and a global positioning system (GPS) antenna so that thepersonal devices 106 may be aware of their geographical locations. Thepersonal devices 106 may also be configured to determine its locationvia cell tower and/or WiFi signal triangulation, cell ID information,WiFi location information, near field connections, and otherwise.Illustratively, the personal devices 106 may include mobile phones,personal digital assistants (PDAs), mobile gaming devices, mediaplayers, electronic book readers, tablet computers, laptop computers,and the like. The software of the personal devices 106 may includecomponents for establishing communications over networks 102, 110. Inaddition, the software applications may include multimedia applicationswhich play or otherwise execute audio programs such as music or audiobooks, video programs such as movies or television shows, and videogames.

The LAN 102 may connect to media devices 104, personal devices 106, anda management component 108 in communication via a wireless link, such asa WiFi link. In such cases, the LAN 102 may be or include a wirelesslocal area network (WLAN). Additionally, the LAN 102 may connect to thenetwork 110, facilitating communication between various devices andcomponents communicating over the LAN 102 and the devices and componentsconnected to the network 110, such as the remote service 112 and otherpersonal devices 106. In some embodiments, the components networked tothe LAN 102 may communicate over a combination of wired and wirelesscommunication links. For example, the LAN 102 may be networked to amanagement component 108 (which may be a single management component ormay include multiple management components) in communication withseveral media devices 104 via a wired communication link, such as anEthernet connection. Due to the mobile nature and wireless connectivityof many personal devices 106, the LAN 102 may network any number ofpersonal devices 106, and the number may change over time or from minuteto minute. Personal devices 106 may communicate with the managementcomponent 108 via a WiFi connection.

The media devices 104 can correspond to a wide variety of electronicdevices. In some embodiments, the media devices 104 can include audio orvisual output components, such as speakers or video screens. Forexample, the media devices 104 may include televisions, stereos, digitalvideo recorders (DVRs), set-top boxes, desktop computers, servercomputers, and the like. In some embodiments, a media device 104 mayalso be a personal device 106, such as a mobile media player that isoptionally connected to speakers or a stereo. Some media devices 104 mayinclude one or more processors and a storage or memory which may containsoftware applications executed by the processors. The software of themedia devices 104 may include components for establishing communicationsover the LAN 102 and network 110. In addition, the software applicationsmay include multimedia applications which play or otherwise executeaudio programs such as music or audio books, video programs such asmovies or television shows, and video games. The storage of the mediadevices 104 may also contain copies of content to play on the speakersor video screens. The media devices 104 may be configured to receiveand/or transmit streaming media (e.g., audio and/or video content).

The management component 108 illustrated in FIG. 1 may correspond to acomputing device configured to manage content consumption among themedia devices 104 and personal devices 106. For example, the managementcomponent 108 may include one or more processors and a computer storageor memory which contains software applications executed by theprocessors. The services provided by the management component 108 caninclude detecting the presence of personal devices 106 and transferringor transitioning content consumption from the personal devices 106 tothe media devices 104 within the LAN 102. The management component 108may be configured to determine and/or receive a given user's physicallocation and the location of media devices to thereby determine whatmedia devices are in audible and/or visible proximity with the user. Insome embodiments, the management component 108 may be coupled to orintegrated into a media device 104. For example, a smart television orset-top box may include a combination of software and hardware whichprovide the services of the management component 108.

The remote service 112 illustrated in FIG. 1 may correspond to a logicalassociation of one or more computing devices configured to receiveinformation from the personal devices 106 and distribute the informationto various LANs 102 and components coupled thereto. For example, theremote service 112 may communicate with the personal devices 106 whilethe personal devices 106 are connected to a LAN 102, and can transmitinformation regarding the operation of the personal devices 106 to themanagement component 108 of the LAN 102. In similar fashion, themanagement component 108 or some other component of the LAN 102 mayutilize the remote service 112 to communicate with personal devices 106which are not currently connected to the LAN 102. Optionally, the remoteservice 112 incorporates the functionality of the management component108 so that the user does not have to employ user equipment to host themanagement component 108. In other embodiments, the remote service 112may be executed by one more virtual machines implemented in a hostedcomputing environment. The hosted computing environment may include oneor more rapidly provisioned and released computing resources, whichcomputing resources may include computing, networking and/or storagedevices. A hosted computing environment may also be referred to as acloud computing environment.

In some embodiments, the networked content consumption environment mayinclude additional or fewer components that those illustrated in FIG. 1.For example, the networked content consumption environment may includeadditional LANs 102 which personal devices 106 may or may not join inaddition to the LAN 102 illustrated in FIG. 1. In another example, thenetworked content consumption environment may not include a remoteservice 112. In such a case, the management component 108 of the LAN 102may collect information from the personal devices 106 in a mannersimilar to the remote service 112.

Example Content Presentation Transitions

Turning now to FIG. 2, an illustrative LAN 102 including several mediadevices 104 will be described. Communication among the devices of theillustrative LAN 102 of FIG. 2 is facilitated by at least one wireless(e.g., WiFi) access point 202, and therefore the LAN 102 may be awireless local area network (WLAN). The example LAN 102 illustrated inFIG. 2 also includes several media devices: a smart television 206, astereo 208, and a television 210. The smart television 206 is configuredto perform the functions of the management component 108. In someembodiments, the LAN 102 can include additional or fewer media devices104. For example, a LAN 102 can include fewer televisions, more stereos,or other media devices 104 not illustrated in FIG. 2, such as personalcomputers, video game systems, and the like. As described above withrespect to FIG. 1, not every component of the LAN 102 must communicatewirelessly. For example, the stereo 208 and television 210 maycommunicate with the smart television 206 via a wired connection, whilethe WiFi access point 202 facilitates communication between eachcomponent of the LAN 102 and personal devices 106.

The access point 202 may provide a coverage area 204 that encompasses anentire building, such as a house, or some portion thereof. In someembodiments, two or more access points 202 may be used to increase thecoverage area 204, reduce or eliminate dead spots, or support moreconcurrent personal devices 106. The access point 202 may be coupled toor otherwise in communication with a modem, such as a cable modem ordigital subscriber line (DSL) modem, through which media devices 104 maycommunicate with devices outside of the LAN 102 via the network 110, asillustrated in FIG. 1.

In operation, a user of a personal device 106 (not pictured in FIG. 2)may set up a LAN 102 within the home as a WLAN with several mediadevices 206, 208, 210. The user may employ the personal device 106 toconsume content while outside the home, and wish to automaticallytransition playback of the content to one or more of the media devices104 after the user comes home and the personal device rejoins the LAN102. For example, the user may listen to an audio book recording on thepersonal device 106. The personal device 106 may not be connected to theLAN 102 when playing of the audio book commences. The user may belistening to the audio book in a car 212 during the commute home fromwork. When the car 212 enters the coverage area 204 of the LAN 102, thepersonal device 106 may automatically connect to and join the LAN 102.The management component 108 integrated into the smart television 206may detect that the personal device 106 has joined the network. Themanagement component 108 may communicate with the personal device 106and determine that the personal device 106 is currently playing an audiobook. In response, the management component 108 can receive data fromthe personal device 106 indicating the current play position of theaudio book or the management component 108 may receive current playposition from another system which frequently receives current playposition information from the personal device 106 (e.g., as part of adata synchronization process).

Generally speaking, a current play position or presentation position mayrefer to any information that reflects a current playback position of aconsumed content, or to any measurement of an amount of content consumedby a user. For example, a current play position of an audio book may beindicated by a timestamp, a counter, a chapter, a last spoken word,etc., or any combination thereof. In some embodiments, a position may bereflected as a percentage (e.g., a point representing 25% of the contenthas been consumed). In other embodiments, a current play position may bereflected as an absolute value (e.g., at 2 hours, 30 minutes and 5seconds into an audio book). One skilled in the art will appreciate thata current play position may be reflected by any combination of the aboveinformation, or any additional information reflective of a position of acontent. In some embodiments, data regarding the current play positionof the content may reflect the play position at which a device hasstopped presenting content or will stop presenting the content.

If the personal device 106 is playing back streaming content fromanother system, the management component 108 optionally obtains thecurrent play position from the system streaming the content. Themanagement component 108 can then cause the personal device 106 to pauseor stop playing the audio book. For example, the management component108 may transmit a notification to the personal device 106 that playbackof the audio book is transferring to the smart television 206. Inresponse, the personal device 106 can pause or otherwise discontinueplayback of the audio book.

Transfer of presentation to the smart television 206 (or any mediadevice 104) may occur in a number of different ways. For example, aftera period of time elapses, the audio book may automatically begin playingon the smart television 206. The period of time may be based on anestimate of how long it normally takes or is expected to take for theuser to move from the car 212 to a listening area corresponding to thesmart television 206. By way of example, the time estimate may have beenpreviously manually entered by the user, or the time estimate may bebased on previous location information collected by the managementcomponent 108 (e.g., from location information received from a cellphone carried by the user, where the management component 108 previouslydetected when the user entered the garage and monitored how long it tookthe user to reach the listening area corresponding to the smarttelevision 206). In another example, the transfer may not occur untilthe personal device 106 is detected to be within a listening areacorresponding to the smart television 206. For example, a GPS antennamay be used to determine the location of the personal device 106 as theuser moves from the car into the home, or the personal device 106 mayestablish a near field connection, such as a Bluetooth connection,directly with the smart television 206 when the personal device 106 iswithin range of the smart television 206. Further examples are describedbelow with respect to FIGS. 3A and 3B.

In some embodiments, the user may be prompted before playing of theaudio book on the personal device 106 is paused and/or transitioned tothe smart television 206. For example, the personal device 106 may be amobile phone. An audio notification, such as a message interruptingplayback of the audio book, may be given to the user. Alternatively, orin addition, a visual notification may be given, such as display of amessage on the screen of the mobile phone. The notification may indicatethat the personal device 106 has been detected by the managementcomponent 108, and that playback may be transferred to the smarttelevision 206 if the user chooses. The user may choose to allow thetransition, such as with a voice command or a touch screen interactionwith the mobile phone. Additionally, the user may be presented with theoption to select which media device 104 within the LAN 102 to transitionplayback of the audio book.

In some embodiments, the personal device 106 may not connect to the LAN102 or directly communicate with the management component 108 or a mediadevice 104. For example, referring the illustrative networked contentconsumption environment of FIG. 1, the personal device 106 may onlycommunicate over the network 110 with a remote service 112. The personaldevice 106 may have a GPS antenna and therefore may be aware of itslocation within close geographic proximity to the LAN 102. The personaldevice 106 may be configured transmit a play position for content thatit is currently playing to the remote service 112. The remote service112 may then contact the management component 108, transferring the playposition and a notification that the user will be entering the houseshortly. In response to receiving such information from the remoteservice 112, the management component 108 can schedule content playbackon the smart television 206 at the play position received from theremote service 112.

Turning now to FIG. 3A, example interactions between a personal device106 and various media devices 104 will be described. FIG. 3A illustratesthe LAN 102 of FIG. 2. Illustratively, the LAN 102 is a home networkincluding three media devices 206, 208, 210, each in a different room.As described above, the LAN 102 need not be a home network, but mayinstead be some other network, such as a corporate or universitynetwork.

A user 310 with a personal device 106 enters the home at (A). This mayoccur, for example, after the user has driven a car 212 to within thecoverage area 204, as illustrated in FIG. 2. The personal device 106 mayhave been detected by the management component 108 integrated with thesmart television 206, and in response playback of the audio book may beautomatically transferred to the smart television 206 at (B).

The user 310 may next relocate to a different room of the home at (C).The management component 108 or some other component of the LAN 102,such as the media devices 206, 208 may detect the movement andtransition playback at (D) of the audio book to a media device—thestereo 208—at the new location. The change in location may be based onGPS tracking of the personal device 106. Alternatively, the change maybe based on near-field communication connections, such as Bluetoothconnections, between the personal device 106 and the media devices 206,208, 210. For example, the personal device 106 may have established anear field connection with the smart television 206, and that connectionmay be lost in response to the user relocating to a different room. Atthe new location, the personal device 106 may establish a new near fieldconnection, this time with the stereo 208. In some embodiments, the nearfield connection may not be lost as the user relocates. In such cases,the personal device 106, management component 108, or some othercomponent can determine which near field connection between the personaldevice 106 and a media device 206, 208, 210 is strongest, and thereforemost likely to correspond to the media device 104 within the closestlistening range of the user 310.

In some embodiments, relocation of the user 310 about the geographicarea corresponding to the LAN 102 may be detected by voice recognitioncomponents. For example, the user 310 may move to a different room ofthe house at (C) and speak at the new location. In some cases, thespoken words may be voice commands initiating the transition of contentplayback to the new location at (D). The stereo 208 at the new location,or the smart television 206 at the prior location of the user 310, maybe configured with a voice recognition component to receive the voicecommand. The voice command may be processed by the media device 206,208, or may be transmitted to the management component 108 forprocessing. Alternatively, a separate microphone or voice recognitioncomponent (not pictured) may used at one or more geographic locations ofthe corresponding LAN 102 to receive voice commands or to recognize whena user 310 has changed location.

Optionally, the management component 108 may include or be coupled to afacial recognition system (such as may be found in a video game system),wherein various optical sensors (e.g., cameras) are placed at differentlocations, and the facial recognition system is configured to determinewho is in their room based on facial and/or other characteristics.

In further embodiments a separate sensor component may be used to detectwhen a user 310 or a personal device 106 moves about the geographic areacorresponding to the LAN 102. FIG. 3B illustrates the LAN 102 of FIGS. 2and 3A with the addition of a sensor component 350. The sensor component350 may be configured to communicate with or track personal devices 106as they are moved about the geographic area corresponding to the LAN102. For example, the sensor may receive GPS coordinates or otherlocation information from the personal devices 106 via a wirelessconnection similar to the connections between personal devices 106 andmedia devices 104 described above.

The sensor 350 may detect the presence of a personal device 106 via atagging and tracking system, such as a system utilizing radio frequencyidentification (RFID) tags integrated into each personal device 106.Several sensors 350 may be placed about the geographic locationcorresponding to the LAN 102 in order to detect when a personal device106 has entered a location or left a location. For example, a sensorcomponent 350 may be paired with each media device 104 to determinewhether a personal device 106 is in close proximity to the media device104.

Sensor components 350 may transmit updates to the management component108 in response to determining that a personal device 106 has moved.Alternatively, the sensor component 350 can transmit updates to themanagement component 108 regarding the locations of personal devices 106at regular intervals, or the sensor component 350 may be polled by themanagement component 108.

In addition to the use of a sensor component 350, FIG. 3B illustrates asample conflict and resolution in cases involving a personal device 106attempting to transition playback to a media device 104 that is alreadyin use. As seen in FIG. 3B, a user 310 is located in a room with a smarttelevision 206. The smart television 206 may be presenting content thatwas transitioned from the personal device 106 of the user 310. A seconduser 320 is in a second room, and content is playing on the stereo 208in the second room. The content playing on the stereo 208 may have beentransitioned from a personal device 106 of the second user 320. Thesecond user 320 then relocates at (A) to the room with the smarttelevision 206. The content playing on the stereo 208 may notautomatically transition to the smart television 206 in response to thesecond user's 320 relocation if the first user 310 has priority. Thepriority may be, for example, priority access to a media device 104,relative priority among users 310, 320, or content-based priority. Notethat the transitions described below with respect to FIG. 3B may applyto any of number of situations, including those with more than twousers, and those in which the second user 320 is entering the geographicarea corresponding to the LAN 102 and content will be transferred fromthat user's 320 personal device 106 rather than from a different mediadevice 104.

Priority access to a media device 104 may be determined according torules or hierarchies. For example, in FIG. 3B the first user 310 isusing the smart television 206 to consume content. Therefore the firstuser 310 may have priority access to the smart television 206 over allpotential subsequent users until the first user 310 stops using thesmart television 206. In some embodiments, the first user 310 may havepriority access to the smart television 206 until the occurrence of someother event or the passage of some period of time. In another example, auser profile or media device profile may be maintained by the managementcomponent 108. The profile may specify that the user 310 has priorityaccess to the smart television 206 over all other users, or over somesubset of users including the second user 320.

Relative priority among several users may be determined based on ahierarchy in which each user is assigned to a level of the hierarchy,and users of a higher level have priority over users of a lower level.The first user 310 may have priority access to any media device 104, ora subset thereof including the smart television 206, if the first user310 is associated with a priority level or rank that is greater than thepriority level or rank of the second user 320. Priority levels may beassigned and/or maintained for the various users within the managementcomponent 108.

Priority may be additionally or alternatively based on characteristicsof the content. For example, if the first user 310 is listening to anaudio book with mature content or explicit language, and the second user320 is a child, the content associated with the second user 320 may begiven priority and transferred to the media device 104 that is playingcontent associated with the first user 310, or playback of content maybe stopped altogether. Content may be assigned ratings or otherindicators with which such priority determinations can be made. Theaudio book with explicit language may be given the equivalent of an “R”rating used for motion pictures. The management component 108 may keep aprofile of each user, including which content ratings each user mayaccess or be exposed to. If the user profile associated with the seconduser 320 specifies that the second user 320 may not access or be exposedto content with “R” ratings, then playback of “R” rated content canautomatically be stopped when a personal device 106 associated with thesecond user 320 enters the room or the listening/viewing range of themedia device 104 on which the “R” rated content is being played.

Rather than transferring or not transferring content among personaldevices 106 and media devices 104 based solely on priority rules, someembodiments may implement alternatives such as suggested resolutions,overrides, or prompts. Returning to the example above, in response tothe second user 320 entering a room with a media device 104 playing “R”rated content, the management component 108 may propose a compromiseinstead of ending playback of the “R” rated content and/or transferringover the content of the second user 320 that was playing on a differentmedia device 104. The management component 108 may have access to alisting of the content that each user 310, 320 has access to. Themanagement component 108 may determine whether there is any contentcommon to both users, such as an audio book in progress for each user, amovie that each user has watched, a song that each user has listened tomore than a threshold number of times, etc. If such common content isfound, the management component 108, a media device 104, or a personaldevice 106 may notify one or both users of the potential compromise andaccept a command to initiate playback of the content on the media device104 that is the source of the conflict. For example, if the users 310and 320 both have access to an audio book and have recently reachedsimilar positions within the audio book, the smart television 206 mayaurally and/or visually notify the users 310, 320 of the potentialcompromise. Upon acceptance of the compromise, playback of the commonaudio book may begin near the latest position reached by either user310, 320. Acceptance may be required of both users, of only the userwith a higher relative priority ranking, of the user with priorityaccess to the media device 104, etc.

In some embodiments, priority determinations may be overridden.Returning to the example above, the second user 320 enters a room inwhich “R” rated content, initiated by the first user 310, is beingplayed on the smart television 206. The first user 310 may have a higherrelative priority rank than the second user 320, or the user profile forone or both users 310, 320 may indicate that the first user 310 mayoverride any content transfer or priority determination involving thesecond user 320 (e.g.: the first user 310 is the parent of the seconduser 320). In such cases, the first user 310 may initiate an override ofthe transfer or priority determination, such as by issuing a voicecommand or submitting a command via a personal device 106 to continueplaying the “R” rated content on the smart television 206.

In some embodiments, rather than the management component 108determining priorities and compromises, or one user initiating anoverride in response to potential conflicts, users may instead beprompted for a decision in response to conflicts such as the potentialtransfer of content associated with one user to a media device 104currently playing content associated with another user. Returning to theexample described above and illustrated in FIG. 3B, a third user (notpictured) arrives home and, typically, content playing on the thirduser's personal device 106 is transferred to the smart television 206.However, if the first user 310 is already using the smart television206, the users can be prompted for a command. The options may includedeciding which content to play on the smart television 206, or a listingof media devices 104 that are available to transfer playback of eithercontent to, such as the television 210.

Content Presentation Transition Process

FIG. 4 illustrates a sample routine 400 for automatically transitioningcontent consumption from a personal device 106 to a media device 104.The routine 400 may be implemented by a management component 108 or amedia device 104. The routine 400 can be implemented as a softwareprogram or collection of programs residing within non-transitorycomputer storage, such as RAM, ROM, a hard disk, or the like, of acomputing device associated with the management component 108 or a mediadevice 104. One or more processors of the computing device can executethe software program.

The routine 400 begins at block 402. The routine 400 may be a backgroundprocess that executes continuously on a management component 108, amedia device 104, or some other entity within a LAN 102. Alternatively,the routine 400 may be instantiated whenever a new personal device 106is detected, at beginning block 406.

At block 404, the management component 108 monitors the LAN 102 for newpersonal devices 106. The monitoring may be passive. For example, themanagement component 108 may receive a notification each time a devicejoins or leaves the LAN 102. In some embodiments, the monitoring may beactive. For example, the management component 108 may regularly attemptto contact personal devices 106 which have previously connected to theLAN 102.

At block 406, the management component 108 detects a personal device106. The process may proceed to block 408, while the managementcomponent 108 continues to monitor for newly connected personal devices106 at block 404.

At block 408, the management component 108 obtains an identifier and aplay position or some other presentation position from the personaldevice 106 (or other system in communication with the personal device106). The management component 108 may initiate retrieval of theinformation, or be sent the information from the personal device 106upon joining the LAN 102. The identifier may be a unique identifier ofthe personal device 106, such as a media access control (MAC) address.In some embodiments, the management component 108 may receive anidentifier associated with the user instead of, or in addition to, anidentifier of the personal device 106. For example, the managementcomponent 108 may receive a username, account number, token, or cookiefrom the personal device 106 identifying the user or the personal device106.

The play position obtained by the management component 108 may includedata indicating the time that has elapsed from the start of the contentplayback when the playback was interrupted, a file position, apredefined chapter or page number, a frame identifier, a sceneidentifier, or a bookmark. In some cases, the play position may beadjusted, either before or after receipt by the management component108. For example, the play position of an audio book can be adjustedsuch that some portion of the audio book will be replayed aftertransition to a different media device 104. This can aid in refreshingthe user's memory prior to proceeding with new material.

At block 410, the management component 108 can determine media device104 availability. As illustrated in FIG. 3A, a user may enter a housedirectly into a room with a media device 104. The management component108 can determine whether that media device 104 is available to receivetransition of content playback. For example, the media device 104 mayalready be in use, in which case priority rules may be determined andapplied.

In another example, the media device 104 may not be reachable,indicating a potential issue with the media device 104, the LAN 102, orthe management component 108. If the originally targeted media device104 is not available, a backup or secondary media device 104 may bechosen. The secondary media device 104 may be preselected or dynamicallydetermined based on criteria such as the type of content (e.g.: playbackof video content may not be transitioned to a stereo), proximity to thepreferred media device, and which media devices 104 may be in use.

At block 412, a playback configuration can be loaded or otherwisedetermined for the targeted media device 104. Each media device 104, oronly a subset of media devices 104, may be associated with a playbackconfiguration. For example, the volume, equalizer settings, picturesettings, and the like may all be preconfigured, and the configurationsaved for future use by the management component 108. Individual usersmay have preferred settings for media devices 102 which may also besaved as part of their user profile or as part of a media deviceprofile.

At block 414, the management component 108 initiates the transition ofcontent playback from the personal device 106 to the media device 104.In some embodiments, the personal device 106 may have already ceasedplayback. For example, when the personal device 106 transmits a playposition to the management component 108, the personal device 106 maystop playback at that time or may have already stopped playback. Theplay position and configuration settings can be transmitted to the mediadevice 104, and the media device 104 can be instructed to begin playbackfrom the play position.

The content that is played from the media device 104 may be a copy ofthe content from the personal device 106, the original from which a copywas made for the personal device 106, a streaming file from anapplication server, etc. The content is not streamed from personaldevice 106 to the media device 104; either an independent copy is playedfrom a local store of the media device 104 or streamed from anapplication server, or the same file is streamed from an applicationserver.

Personal Device Monitoring Process

FIG. 5 illustrates a sample routine 500 for automated learning of usertendencies as they relate to content playback and geographic location.The routine 500 may be implemented by a personal device 106 in concertwith a remote service 112 or a management component 108. The routine 500can be implemented as a software program or collection of programsresiding within non-transitory computer storage, such as RAM, ROM, ahard disk, or the like, of a computing device associated with thepersonal device 106, remote service 112, and/or management component108. One or more processors of the computing device can execute thesoftware program.

The routine 500 begins at block 502. The routine 500 may be a backgroundprocess that executes continuously on a personal device 106, remoteservice 112, or a management component 108 Alternatively, the routine500 may be instantiated whenever a personal device 106 leaves the LAN102.

At block 504, the geographic movement and content playback operations ofthe personal device 106 may be tracked. For example, GPS coordinates maybe recorded at predetermined or dynamically determined time or distanceintervals, and content playback selections may be recorded. Dataregarding the location and operation of the persona device 106 may beinitially stored on the personal device 106, or may be permanentlystored there.

At block 506, the data is transmitted to the remote service 112 ormanagement component 108. For example, with reference to FIG. 1, thedata may be transmitted to the remote service 112 via the network 110 ifthe personal device 106 is not connected to the LAN 102. The data may betransmitted continuously, as it is generated. In some embodiments, thedata is transmitted on a regular or irregular schedule. In someembodiments, the data is transmitted in response to an event, such aseach time the personal device 106 rejoins or leaves the LAN 102. Theoperations of blocks 504 and 506 can execute continuously, even if theprocess 500 proceeds to block 508.

At block 508, the data is processed to determine or update a profile forthe user or the personal device 106. One item that may be included in auser profile relates to the amount of time a user takes to move betweentwo points. GPS coordinates can be used to determine the location,direction, and speed that a user travels. From this data, the remoteservice 112 can detect travel patterns, such as where the user travels,when such travelling occurs, and how long each trip takes. Such data canbe useful in transferring content playback from the personal device 106to a media device 104. For example, remote service 112 can determine howlong it typically takes a user to walk from the car to the home andfinally into the room with the media device 104 to which playback ofcontent is to be transferred. If the time is consistent and predictable,the management component 108 may then be able to use a timer whentransferring content, such as causing the personal device 106 to stopplayback when the user arrives home, and resuming playback at the smarttelevision 206 two minutes later.

A user may have several typical destinations, which may correspond tohome, work, school, and the like. The user's personal device 106 mayconnect to a LAN at more than one destination, and use the processesdescribed above to transfer content playback to media devices 104 at thedestinations. The amount of time it takes for the user to move from thecar to the final destination may be quite long, such as when the userparks in a parking lot and walks a substantial distance to a place ofbusiness where content playback will transition to a media device 104.In these cases, playback on the personal device 106 may continue sothat, for example, the user can listen to the content on a headset untilthe user arrives in the room or other location of the media device 104.In such cases, no timer will be used when transferring content; insteadthe management component 108 may wait until the user is within hearingrange of the media device 104 before playback of the content istransferred.

At block 510 an updated user or device profile may be transmitted to amanagement component 108.

TERMINOLOGY

Depending on the embodiment, certain acts, events, or functions of anyof the processes or algorithms described herein can be performed in adifferent sequence, can be added, merged, or left out all together(e.g., not all described operations or events are necessary for thepractice of the algorithm). Moreover, in certain embodiments, operationsor events can be performed concurrently, e.g., through multi-threadedprocessing, interrupt processing, or multiple processors or processorcores or on other parallel architectures, rather than sequentially.

The various illustrative logical blocks, modules, routines, andalgorithm steps described in connection with the embodiments disclosedherein can be implemented as electronic hardware, computer software, orcombinations of both. To clearly illustrate this interchangeability ofhardware and software, various illustrative components, blocks, modules,and steps have been described above generally in terms of theirfunctionality. Whether such functionality is implemented as hardware orsoftware depends upon the particular application and design constraintsimposed on the overall system. The described functionality can beimplemented in varying ways for each particular application, but suchimplementation decisions should not be interpreted as causing adeparture from the scope of the disclosure.

The steps of a method, process, routine, or algorithm described inconnection with the embodiments disclosed herein can be embodieddirectly in hardware, in a software module executed by a processor, orin a combination of the two. A software module can reside in RAM memory,flash memory, ROM memory, EPROM memory, EEPROM memory, registers, harddisk, a removable disk, a CD-ROM, or any other form of a non-transitorycomputer-readable storage medium. An exemplary storage medium can becoupled to the processor such that the processor can read informationfrom, and write information to, the storage medium. In the alternative,the storage medium can be integral to the processor. The processor andthe storage medium can reside in an ASIC. The ASIC can reside in a userterminal. In the alternative, the processor and the storage medium canreside as discrete components in a user terminal.

Conditional language used herein, such as, among others, “can,” “could,”“might,” “may,” “e.g.,” and the like, unless specifically statedotherwise, or otherwise understood within the context as used, isgenerally intended to convey that certain embodiments include, whileother embodiments do not include, certain features, elements and/orsteps. Thus, such conditional language is not generally intended toimply that features, elements and/or steps are in any way required forone or more embodiments or that one or more embodiments necessarilyinclude logic for deciding, with or without author input or prompting,whether these features, elements and/or steps are included or are to beperformed in any particular embodiment. The terms “comprising,”“including,” “having,” and the like are synonymous and are usedinclusively, in an open-ended fashion, and do not exclude additionalelements, features, acts, operations, and so forth. Also, the term “or”is used in its inclusive sense (and not in its exclusive sense) so thatwhen used, for example, to connect a list of elements, the term “or”means one, some, or all of the elements in the list.

Conjunctive language such as the phrase “at least one of X, Y and Z,”unless specifically stated otherwise, is to be understood with thecontext as used in general to convey that an item, term, etc. may beeither X, Y or Z, or a combination thereof. Thus, such conjunctivelanguage is not generally intended to imply that certain embodimentsrequire at least one of X, at least one of Y and at least one of Z toeach be present.

While the above detailed description has shown, described, and pointedout novel features as applied to various embodiments, it can beunderstood that various omissions, substitutions, and changes in theform and details of the devices or algorithms illustrated can be madewithout departing from the spirit of the disclosure. As can berecognized, certain embodiments of the inventions described herein canbe embodied within a form that does not provide all of the features andbenefits set forth herein, as some features can be used or practicedseparately from others. The scope of certain inventions disclosed hereinis indicated by the appended claims rather than by the foregoingdescription. All changes which come within the meaning and range ofequivalency of the claims are to be embraced within their scope.

What is claimed is:
 1. A system for transferring content execution, thesystem comprising: one or more processors; a computer-readable memory;and a management component residing in the computer-readable memory andexecuted by the one or more processors, the management componentconfigured to at least: detect a mobile device within a wirelesscommunication range of the management component; determine that themobile device is playing an audio program; cause the mobile device,without user intervention, to stop playing the audio program; identify astop position associated with the audio program on the mobile device;and automatically initiate, without user intervention, playing of theaudio program on a media device, wherein the media device is differentthan the mobile device, and wherein the playing on the media devicebegins at a position substantially near the stop position on the mobiledevice.
 2. The system of claim 1, wherein detecting the mobile devicecomprises establishing a connection with the mobile device over awireless local area network.
 3. The system of claim 1, wherein detectingthe mobile device comprises establishing a near-field wirelessconnection with the mobile device.
 4. The system of claim 1, whereinplaying the audio program on the media device comprises streaming atleast a portion of the audio program from a remote service.
 5. Thesystem of claim 1, wherein playing the audio program on the media devicecomprises loading a copy of at least a portion of the audio program froma local storage component.
 6. The system of claim 1, wherein the playingof the audio program on the media device begins within a predeterminedtime from the stopping of playing of the audio program on the mobiledevice.
 7. The system of claim 1, wherein the mobile device comprisesone of a mobile phone, tablet computer, media player, or laptopcomputer, and wherein the media device comprises one of a television,set-top box, stereo, audio device, computing device, or mobile device.8. The system of claim 1, wherein the playing of the audio program onthe media device comprises displaying visual images on a display of themedia device related to the audio program in addition to generatingaudio from the audio program from the media device.
 9. Acomputer-implemented method for transferring content execution, thecomputer-implemented method comprising: under control of one or morecomputing devices configured with specific computer-executableinstructions, obtaining data indicating the presence of a mobile devicewithin a wireless communication range of a management component;determining that the mobile device is presenting a content item, whereinthe content item includes an audio component or a visual component;determining whether a first media device is available to present thecontent item; and in response to determining that the first media deviceis available: obtaining data indicating a presentation position of thecontent item being presented on the mobile device; causing the mobiledevice, without user intervention, to stop presenting the content item;and causing the first media device, without user intervention, toautomatically initiate presentation of the content item, wherein thepresentation begins at substantially the obtained presentation position.10. The computer-implemented method of claim 9 wherein the content itemcomprises an audio book file, a music file, a video file, a video gamefile, or a multimedia file.
 11. The computer-implemented method of claim9, further comprising: obtaining a user profile of a user of the mobiledevice; and selecting, from a plurality of media devices, the firstmedia device, wherein the first media device is associated with the userprofile.
 12. The computer-implemented method of claim 9, furthercomprising: obtaining a device profile for the first media device,wherein initiating presentation of the content item on the first mediadevice comprises configuring the first media device according to thedevice profile.
 13. The computer-implemented method of claim 12 whereinthe device profile comprises data regarding a volume at which the mediadevice should be operated.
 14. The computer-implemented method of claim9 further comprising: in response to determining that the first mediadevice is not available, determining whether a second media device isavailable; and in response to determining that the second media deviceis available, initiating, on the second media device, presentation ofthe content item, wherein presentation begins at substantially theobtained presentation position.
 15. The computer-implemented method ofclaim 9, further comprising: in response to determining that the firstmedia device is not available, determining whether a user of the mobiledevice is associated with priority access to the first media device; andin response to determining that the user is associated with priorityaccess, initiating presentation of the content item on the first mediadevice.
 16. The computer-implemented method of claim 15, furthercomprising: in response to determining that the user is not associatedwith priority access: determining whether a second media device isavailable; and in response to determining that the second media deviceis available, providing a notification that the second media device isavailable.
 17. The computer-implemented method of claim 9, whereinobtaining data indicating the presence of the mobile device comprisesestablishing a connection with the mobile device over a wireless localarea network.
 18. The computer-implemented method of claim 9, whereinobtaining data indicating the presence of the mobile device comprisesestablishing a near-field wireless connection with the mobile device.19. The computer-implemented method of claim 9, wherein initiatingpresentation of the content item comprises streaming at least a portionof the content item from a remote service.
 20. The computer-implementedmethod of claim 9, wherein initiating presentation of the content itemcomprises loading at least a portion of a copy of the content item froma local storage component.
 21. A non-transitory computer readable mediumcomprising executable code that, when executed by a processor, causes acomputing device to perform a process comprising: obtaining dataindicating the presence of a mobile device within a wirelesscommunication range of the management component determining that themobile device is presenting a content item, wherein the content itemincludes an audio component or an image component; determining whether afirst media device is available to present the content item; and inresponse to determining that the first media device is available:obtaining data indicating a presentation position of the content itembeing presented on the mobile device; causing the mobile device, withoutuser intervention, to stop presenting the content item; and causing thefirst media device, without user intervention, to automatically initiatepresentation of the content item, wherein the presentation begins atsubstantially the obtained presentation position.
 22. The non-transitorycomputer readable medium of claim 21 wherein the process furthercomprises: obtaining a device profile for the first media device,wherein initiating presentation of the content item on the first mediadevice comprises configuring the first media device according to thedevice profile.
 23. The non-transitory computer readable medium of claim21 wherein obtaining data indicating the presence of the mobile devicecomprises establishing a wireless communication connection with themobile device.
 24. The non-transitory computer readable medium of claim21 wherein initiating presentation of the content item comprisesstreaming at least a portion of the content item from a remote service.25. The non-transitory computer readable medium of claim 21 wherein theprocess further comprises: in response to determining that the firstmedia device is not available, determining whether a second media deviceis available; and in response to determining that the second mediadevice is available, initiating, on the second media device,presentation of the content item, wherein presentation begins atsubstantially the obtained presentation position.
 26. The non-transitorycomputer readable medium of claim 21 wherein the process furthercomprises: in response to determining that the first media device is notavailable, determining whether a user of the mobile device is associatedwith priority access to the first media device; and in response todetermining that the user is associated with priority access, initiatingpresentation of the content item on the first media device.
 27. Thenon-transitory computer readable medium of claim 26 wherein the processfurther comprises: in response to determining that the user is notassociated with priority access: determining whether a second mediadevice is available; and in response to determining that the secondmedia device is available, providing a notification that the secondmedia device is available.
 28. The non-transitory computer readablemedium of claim 21 wherein the process further comprises: obtaining acontent rating associated with the content item; determining whether aperson is within a range of the first media device, wherein the personis not a user of the mobile device; and in response to determining thatthe person is within the range of the first media device, determiningwhether to present the content item based at least in part on whetherthe person is associated with permission to be exposed to content itemsassociated with the content rating.